Demand-Driven Construction of Call Graphs
نویسنده
چکیده
Call graph construction has been an important area of research within the compilers and programming languages community. However, all existing techniques focus on exhaustive analysis of all the call-sites in the program. With increasing importance of just-in-time or dynamic compilation and use of program analysis as part of the software development environments, we believe that there is a need for techniques for demand-driven construction of the call graph. We present a demanddriven call graph construction framework in this paper, focusing on the dynamic calls due to polymorphism in object-oriented languages. We use a variant of Callahan’s Program Summary Graph (PSG) and perform analysis over a set of influencing nodes. We show that our demanddriven technique has the same accuracy as the corresponding exhaustive technique. The reduction in the graph construction time depends upon the ratio of the cardinality of the set of influencing nodes to the set of all nodes.
منابع مشابه
Simultaneous Demand-Driven Data-Flow and Call Graph Analysis
Recently, there has been much interest in performing demand-driven data-flow analysis in software development environments. Demand-driven analysis techniques compute data-flow fact(s) for a particular program point, rather than computing data-flow information for the entire program. The existing work in this area, however, assumes that the static call graph is available for the entire program. ...
متن کاملEvaluating a Demand Driven Technique for Call Graph Construction
With the increasing importance of just-in-time or dynamic compilation and the use of program analysis as part of software development environments, there is a need for techniques for demand driven construction of a call graph. We have developed a technique for demand driven call graph construction which handles dynamic calls due to polymorphism in object-oriented languages. Our demand driven te...
متن کاملA reactive extension of the OpenMusic visual programming language
Objectives: OpenMusic (OM) is a domain-specific visual programming language designed for computeraided music composition. This language based on Common Lisp allows composers to develop functional processes generating or transforming musical data, and to execute them locally by demand-driven evaluations. As most historical computer-aided composition environments, OM relies on a transformational ...
متن کاملMore Equienergetic Signed Graphs
The energy of signed graph is the sum of the absolute values of the eigenvalues of its adjacency matrix. Two signed graphs are said to be equienergetic if they have same energy. In the literature the construction of equienergetic signed graphs are reported. In this paper we obtain the characteristic polynomial and energy of the join of two signed graphs and thereby we give another construction ...
متن کاملThe Influence of Data-Driven Exercises Through Using a Computer Program on Vocabulary Improvement in an EFL Context
The present study was conducted to evaluate data driven learning (DDL) combined with Computer Assisted Language Learning (CALL) as an approach to improving vocabulary knowledge of Iranian postgraduates majoring in teaching English, English literature and translation. The purpose was to help language learners get familiar with DDL as a student-centered method taking advantage of a computer progr...
متن کامل